using System.IO;

namespace Weever.Json.Serialization
{
    public delegate object FactoryMethod();

    public interface IJsonSerializer
    {
        void Serialize(TextWriter textWriter, object obj);

        void Serialize(IJsonWriter writer, object obj);

        object Deserialize(TextReader reader);

        object Deserialize(TextReader reader, FactoryMethod factoryMethod);
    }
}
